1.2.1 Main

Pour chaque processeur ou variante il y a un programme 'main' qui est exécuté automatiquement à la mise sous tension.
Ce programme fait appel à des classes ou fonctions communes, principalement dans core.py

Utilisation pour émetteur origine V5

projet pour réutiliser les boîtiers existants

main_SC

combine dans un pico RP2040 les fonctions hardware (S) et le calcul (C) et R

main_UI

comporte les interfaces avec l'utilisateur et le logging, est utilisable en micro-python ( pico RP2040) et est relié par une sortie série au Dfplayer . Il fournit une sortie série vers le laptop.

variante à 3 pico

séparer S ,C,UI

  • S comporte toutes les connections => prend sa place sur la plaque de base
  • C est un mini pico séparé

Utilisation temporaire en debug

main_S

Pour le processeur S = accès hardware
Fonctionne uniquement dans un pico RP2040 et fournit toutes les commandes de l'émetteur.
Le debug se fait avec des instructions 'print' et un analyseur de signaux...Ceci est réalisé une fois pour toutes.

main_C

Reçoit un message périodique de S et effectue les calculs.
Son utilité est:

  • debug du calcul périodique dans une situation simple, sans les périls du serveur
  • solution opérationnelle pour l'émetteur V9 avec processeurs séparés S,C,UI et R

main_CUI

Reçoit un message périodique de S , comporte toutes les fonctions de calcul et UI ainsi que les communications de données avec UI et son serveur http
Utilisé dans le laptop pour le debug et le développement.
Il faut utiliser asyncio car il faut combiner au minimum deux tâches: l'une reçoit ses 'messages' par le serveur , l'autre reçoit les messages périodiques de S